Many computing systems allow a user of a client device, such as a desktop computer, a laptop computer, a tablet computer, or a smartphone, to access data that is stored at a remote computing system. For example, the remote computing system may be a cloud computing system. Cloud computing is the use of hardware and software computing resources which are available in a remote location and accessible over a network, such as the Internet. Users are able to lease, buy, or otherwise reserve these computing resources to perform computations and to store their data. For example, data on a local client device can be copied to the remote cloud resources. Cloud resources can provide a number of advantages including cost advantages and/or the ability to adapt rapidly to changing computing resource needs.
In some scenarios, a user working on a client device can access resources of a remote computing system in an interactive, “online” way. However, a remote computing system, including cloud resources, may not always be accessible, such as when a user is working “offline” on a client device. Data can be made available for offline use by sending the data from the remote computing system and storing it on the client device. Considering the volume of data maintained at the remote computing system and accessible to the user during online interaction, it may not be possible, or practical, to store a complete copy of such data on the client device for offline use.